/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package dados;
import java.util.Set;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Observable;
/**
 *
 * @author FabioCerqueira
 */
public class ListaUtentes extends Observable {
    
    private Set<Utente> listaUtentes;

    public ListaUtentes(){
        listaUtentes = new HashSet<Utente>();
    }
    
    public ListaUtentes(ListaUtentes lUtentes){
        listaUtentes = new HashSet<Utente>();
        for(Utente u : listaUtentes)
        this.listaUtentes.add(u.clone());
    }

    public Set<Utente> getListaUtentes() {
        return listaUtentes;
    }
    
    public void adiciona(Utente u){
        listaUtentes.add(u);
        this.setChanged();
        this.notifyObservers("adiciona");
        
    }
    
    public void remove(Utente u){
        Iterator<Utente> it = listaUtentes.iterator();
        Utente utente = null;
        boolean found = false;
        while(it.hasNext() && !found){
            utente = it.next();
            if(utente.equals(u)){
               it.remove();
               found = true;
            }
        }
        this.setChanged();
        this.notifyObservers("remove2");
    }
    
    

}
